<?php
/*
 * Noticia SQL.
 * @Autor: Inicial.cl.
 */
class NoticiaSQL {
	//METODO PARA GRABAR NOTICIA.
	public static $GRABAR_NOTICIA = 
		"INSERT INTO noticia
			(
				mensaje,
				fecha,
				idUsuario,
				titulo,
				src,
                                idEstado
			)
		VALUES
			(
				'{#MENSAJE}',
				NOW(),
				'{#IDUSUARIO}',
				'{#TITULO}',
				'{#SRC}',
                                '{#IDESTADO}'
			);
		";

	//METODO PARA EDITAR NOTICIA.
	public static $EDITAR_NOTICIA = 
		"UPDATE noticia SET 
			mensaje = '{#MENSAJE}',
			fecha = '{#FECHA}',
			idUsuario = '{#IDUSUARIO}',
			titulo = '{#TITULO}',
			src = '{#SRC}',
                        idEstado = '{#IDESTADO}'
		WHERE
			id = {#ID};
		";

	//METODO PARA LISTAR NOTICIA.
	public static $LISTAR_NOTICIA = 
		"SELECT
                    n.id,
                    n.fecha,
                    n.mensaje,
                    n.idUsuario,
                    n.titulo,
                    IFNULL(n.src,'') as src,
                    IFNULL(u.usuario,'') as usuario,
                    n.idEstado,
                    IFNULL(es.nombre,'') as estado
                FROM
                    noticia as n
                    inner join usuario as u on (n.idUsuario = u.id)
                    inner join estado as es on (n.idEstado = es.id)
                WHERE
                    n.idEstado > 0
                ORDER BY
                    n.fecha desc;
		";
        
        //METODO PARA LISTAR NOTICIA.
	public static $LISTAR_NOTICIA_ULTIMAS = 
		"SELECT
			n.id,
			n.mensaje,
			n.fecha,
			n.idUsuario,
			n.titulo,
			n.src,
                        u.usuario,
                        (SELECT COUNT(*) FROM comentario c WHERE c.idRegistro=n.id and c.idTipoComentario=3) as cantidadComentario
                FROM
			noticia n
                        INNER JOIN usuario u ON n.idUsuario=u.id
                ORDER BY
                    fecha DESC
                LIMIT 5;
		";

	//METODO PARA OBTENER POR ID NOTICIA.
	public static $OBTENER_NOTICIA_POR_ID = 
		"SELECT
                    n.id,
                    n.fecha,
                    n.mensaje,
                    n.idUsuario,
                    n.titulo,
                    IFNULL(n.src,'') as src,
                    IFNULL(u.usuario,'') as usuario,
                    n.idEstado,
                    IFNULL(es.nombre,'') as estado
                FROM
                    noticia as n
                    inner join usuario as u on (n.idUsuario = u.id)
                    inner join estado as es on (n.idEstado = es.id)
                WHERE
                    n.id = {#ID};
		";

	//METODO PARA ELIMINAR (CAMBIAR ESTADO A 0) NOTICIA.
	public static $ELIMINAR_NOTICIA = 
		"UPDATE noticia SET
			IdEstado = 0
		WHERE 
			id = {#ID};
		";
        
        public static $LISTAR_ULTIMAS_PAGINACION = 
		"SELECT
                    n.id,
                    n.mensaje,
                    n.fecha,
                    n.idUsuario,
                    n.titulo,
                    n.src,
                    (SELECT COUNT(*) FROM comentario c WHERE c.idRegistro=n.id and c.idTipoComentario=3) as cantidadComentario
                FROM
                    noticia n
                ORDER BY
                    n.fecha DESC
                LIMIT {#INICIO}, {#TAMANNOPAGINA}";

	public static $GRABAR_IMAGEN =
		"UPDATE noticia SET
			src = '{#SRC}'
		WHERE
			id = {#ID};
		";

	public static $ELIMINAR_IMAGEN =
		"UPDATE noticia SET
			src = ''
		WHERE
			id = {#ID};
		";

}
?>